package com.cineplanet.dew.dao;

import java.util.ArrayList;
import java.util.List;

import javax.sql.DataSource;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.cineplanet.dew.exception.DAOExcepcion;
import com.cineplanet.dew.modelo.CarritoCompraEntrada;
import com.cineplanet.dew.modelo.Cine;

public class CarritoCompraEntradaDAOImpl extends HibernateDaoSupport implements CarritoCompraEntradaDAO {
	
	private DataSource dataSource;

	public void setDataSource(DataSource dataSource) {
		this.dataSource = dataSource;
	}
	
	@Override
	public CarritoCompraEntrada insertar(
			CarritoCompraEntrada carritoCompraEntrada) throws DAOExcepcion {
		try {
			getHibernateTemplate().save(carritoCompraEntrada);
		    getHibernateTemplate().flush();
		} catch (Exception e) {

			throw new DAOExcepcion(e.getMessage());
		}
		return carritoCompraEntrada;
	}

	@Override
	public List<CarritoCompraEntrada> listarSitiosSeparados(int idCine,
			int idPelicula, int idUsuario) throws DAOExcepcion {
		List<CarritoCompraEntrada> arreglo = new ArrayList<CarritoCompraEntrada>();
		try {
			arreglo = getHibernateTemplate().find("from CarritoCompraEntrada " +
					"where idCine = ? and idPelicula= ? and idUsuario = ?" ,
					new Object[]{idCine, idPelicula, idUsuario});
		} catch (Exception e) {

			throw new DAOExcepcion(e.getMessage());
		}
		return arreglo;
	}

}
